home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Utilities / Unix / MOTD / Source / DefaultsTable.h < prev    next >
Text File  |  1995-06-12  |  1KB  |  44 lines

  1. #import <objc/NXStringTable.h>
  2.  
  3. #import <defaults/defaults.h>
  4.  
  5. #import <appkit/Application.h>
  6. #import <appkit/color.h>
  7.  
  8. #define SYSTEM "System"
  9.  
  10. #define getDefault(s) NXGetDefaultValue([NXApp appName], s)
  11.  
  12. #define getIntDefault(s) atoi(getDefault(s))
  13.  
  14. #define getBoolDefault(s) ((strncasecmp(getDefault(s), "Yes", 1) == 0) ? YES : NO)
  15.  
  16. #define getStringDefault(s) getDefault(s)
  17.  
  18. #define getFloatDefault(s) atof(getDefault(s))
  19.  
  20. #define getSystemDefault(s) NXGetDefaultValue(SYSTEM, s)
  21.  
  22. #define writeDefault(s, v) NXWriteDefault([NXApp appName], s, v)
  23.  
  24. #define writeBoolDefault(s, v) writeDefault(s, (v) ? "Yes" : "No")
  25.  
  26. int writeIntDefault(const char *name, int value);
  27.  
  28. int writePointDefault(const char *name, NXPoint point);
  29. NXPoint getPointDefault(const char *name);
  30.  
  31. int writeColorDefault(const char *name, NXColor color);
  32. NXColor getColorDefault(const char *name);
  33.  
  34. @interface DefaultsTable : NXStringTable
  35.  
  36. - initFromFile:(const char *) file;
  37. - registerDefaults:(const char *) owner;
  38. - writeDefaults:(const char *) owner;
  39. - updateDefaults;
  40.  
  41. - (int) applyToDefaults:(const char *) owner function:(int (*)(const char *, const NXDefaultsVector)) routine;
  42.  
  43. @end
  44.